// 导入axios
import axios from "axios";
// 导入本地存储
import $local from "./local.js"; 
// 设置axios的默认配置
axios.defaults.baseURL="http://127.0.0.1:8888/api/private/v1/"

// 添加请求拦截器
axios.interceptors.request.use(function (config) {
    // 在发送请求之前做些什么
    if($local.isKey("user_login")){
      let ace=$local.get("user_login");
      // 配置亲求token
      config.headers.Authorization =ace.token;
    }
    return config;
  }, function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
  });

// 添加响应拦截器
axios.interceptors.response.use(function (response) {
    // 对响应数据做点什么
    return response.data;
  }, function (error) {
    // 对响应错误做点什么
    return Promise.reject(error);
  });

// 定义一个函数，发送所有的请求
function request(url,data={},method="get"){
   return axios({
    url,
    method,
    // 当请求方式为post和put时使用data携带参数
    data:method=='post'||method=='put'?data:'',
    // 当请求方式为delete和get是使用params携带参数
    params:method=='delete'||method=='get'?data:''
   })
   
}
export default{
    // 查询数据
    get(url,data){
        return request(url,data,'get');
    },
    // 添加数据
    post(url,data){
        return request(url,data,'post');
    },
    // 删除数据
    delete(url,data){
        return request(url,data,'delete');
    },
    // 修改数据
    put(url,data){
        return request(url,data,'put');
    },

}